﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Interfaces;

namespace TidsRegWEB
{
    public partial class AdminRedigerMedarbejder : System.Web.UI.Page
    {
        TidsRegSrv.TidsRegServiceClient tid = new TidsRegSrv.TidsRegServiceClient();
        List<IMedarbejder> liste;
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Session["loggedIn"] == "" || Session["Admin"] != "true")
            {
                Response.Redirect("/");
            }
            if (!IsPostBack)
            {
                //tid.HentAlleMedarbejder();
                foreach (IMedarbejder VAR in liste)
                {
                    ListItem li = new ListItem(VAR.Navn, VAR.Id.ToString());
                    DdlRedMedarbejderNavn.Items.Add(li);
                }
                OpdaterFelter();
            }
        }

        protected void BtnGem_Click(object sender, EventArgs e)
        {
            int id = int.Parse(DdlRedMedarbejderNavn.SelectedValue);
            string navn = TxtRedMedarbejderNavn.Text;
            decimal normTid;
            string kode = TxtRedKode.Text;
            bool admin = ChkRedAdmin.Checked;

            if (!decimal.TryParse(TtxRedNormMedarbejderTid.Text, out normTid))
                RequiredFieldValidator2.IsValid = false;
            else
            {
                tid.RedigerMedarbejder(id, navn, normTid, kode, admin);
                LblRedBesked.Text = "Medarbejder er rettet.";
                TxtRedMedarbejderNavn.Text = "";
                TtxRedNormMedarbejderTid.Text = "";
                TxtRedKode.Text = "";
                ChkRedAdmin.Checked = false;
            }
            OpdaterFelter();
        }

        protected void DdlRedMedarbejderNavn_SelectedIndexChanged(object sender, EventArgs e)
        {
            OpdaterFelter();
        }

        protected void OpdaterFelter()
        {

            string[] medarbejder = tid.Hent1Medarbejder(int.Parse(DdlRedMedarbejderNavn.SelectedValue));
            TxtRedMedarbejderNavn.Text = medarbejder[0];
            TtxRedNormMedarbejderTid.Text = medarbejder[1];
            TxtRedKode.Text = medarbejder[2];
            if (medarbejder[3] == "True")
            {
                ChkRedAdmin.Checked = true;
            }
            else
            {
                ChkRedAdmin.Checked = false;
            }
        }
    }
}